﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DAL;
using Entities;

namespace QuanLyBilliards_Coffee
{
    public partial class FormThemHoaDon : Form
    {
        public FormThemHoaDon()
        {
            InitializeComponent();
        }

        //private void btnThem_Click(object sender, EventArgs e)
        //{
        //    IHoaDonRepository ihoadon=new HoaDonRepository();

        //    HoaDon hd = new HoaDon();
        //    hd.MaHD = txtMaHoaDon.Text;
        //    bool loai;
        //    if (rdBan.Checked)
        //    {
        //        loai = true;
        //    }
        //    else
        //    {
        //        loai = false;
        //    }
        //    hd.LoaiHD = loai;
        //    hd.NguoiLap = Form1.tennguoidangnhap;
        //    hd.NgayLap = dtpNgayLapHD.Text;
        //    hd.TongTien =int.Parse(txtTongTienHD.Text);
        //    hd.KhachHang = cbbKhachHang.Text;
        //    hd.NhaCungCap = cbbNhaCC.Text;
        //    hd.TenBan = null;
        //    hd.TinhTien = true;
        //    if (txtMaHoaDon.Text == "" || txtTongTienHD.Text == "")
        //    {
        //        MessageBox.Show("Bạn chưa nhập đủ thông tin");
        //    }
        //    else
        //    {
        //        if (cbbKhachHang.SelectedIndex == -1)
        //        {
        //            hd.KhachHang = null;
        //        }
        //        else
        //        {
        //            if (cbbNhaCC.SelectedIndex == -1)
        //            {
        //                hd.NhaCungCap = null;
        //            }
        //            else
        //            {
        //                if (ihoadon.GetByMaHoaDon(txtMaHoaDon.Text) != null)
        //                    MessageBox.Show("Đã tồn tại mã hóa đơn");
        //                else
                            
        //                    {
        //                        if (ihoadon.ThemHoaDon(hd))
        //                        {
        //                            MessageBox.Show("Thêm Thành Công");
        //                        }
        //                        else
        //                        {
        //                            MessageBox.Show("Lỗi thêm");
        //                        }
        //                    }
        //            }
        //        }
        //    }
        //}
        private void btnThem_Click_1(object sender, EventArgs e)
        {
            IHoaDonRepository ihoadon = new HoaDonRepository();

            HoaDon hd = new HoaDon();
            hd.MaHD = txtMaHoaDon.Text;
            bool loai;
            if (rdBan.Checked)
            {
                loai = true;
            }
            else
            {
                loai = false;
            }
            hd.LoaiHD = loai;
            hd.NguoiLap = Form1.tennguoidangnhap;
            hd.NgayLap = dtpNgayLapHD.Text;
            hd.TongTien = int.Parse(txtTongTienHD.Text);
            hd.KhachHang = cbbKhachHang.Text;
            hd.NhaCungCap = cbbNhaCC.Text;
            hd.TenBan = null;
            hd.TinhTien = true;
            if (txtMaHoaDon.Text == "" || txtTongTienHD.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập đủ thông tin");
            }
            else
            {
                if (cbbKhachHang.SelectedIndex == -1)
                {
                    hd.KhachHang = null;
                }
                else
                {
                    if (cbbNhaCC.SelectedIndex == -1)
                    {
                        hd.NhaCungCap = null;
                    }
                    else
                    {
                        if (ihoadon.GetByMaHoaDon(txtMaHoaDon.Text) != null)
                            MessageBox.Show("Đã tồn tại mã hóa đơn");
                        else
                        {
                            if (ihoadon.ThemHoaDon(hd))
                            {
                                MessageBox.Show("Thêm Thành Công");
                            }
                            else
                            {
                                MessageBox.Show("Lỗi thêm");
                            }
                        }
                    }
                }
            }
        }
        private void LoadKhachHang()
        {
            IKhachHangRepository khq=new KhachHangRepository();
            IQueryable<KhachHang> daq=khq.GetAll();
            cbbKhachHang.Items.Clear();
            foreach (KhachHang adfa in daq)
            {
                cbbKhachHang.Items.Add(adfa);
            }
            cbbKhachHang.DisplayMember = "TenKH";
            cbbKhachHang.ValueMember = "MaKH";
        }
        private void LoadNhaCungCap()
        {
            INhaCungCapRepository ncc = new NhaCungCapRepository();
            IQueryable<NhaCungCap> dsncc = ncc.GetAll();
            cbbNhaCC.Items.Clear();
            foreach (NhaCungCap cc in dsncc)
            {
                cbbNhaCC.Items.Add(cc);
            }
            cbbNhaCC.DisplayMember = "TenNCC";
            cbbNhaCC.ValueMember = "MaNCC";
        }
        private void FormThemHoaDon_Load(object sender, EventArgs e)
        {
           txtNguoiLapHD.Text = Form1.tennguoidangnhap;
           LoadNhaCungCap();
           LoadKhachHang();
        }

        private void txtTongTienHD_Validated(object sender, EventArgs e)
        {
            this.errorProvider1.SetError(txtTongTienHD, "");
        }

        private void txtTongTienHD_Validating(object sender, CancelEventArgs e)
        {
            string t = txtTongTienHD.Text;
            if (!XuLyChuoiVao.KiemTraSo(t))
            {
                //txtsodt.Text = "";
                this.errorProvider1.SetError(txtTongTienHD, "Ví Dụ 1234556");
                e.Cancel = true;

            }
        }

       

       
    }
}
